// Copyright @ ChenChao

#pragma once

#include "CoreMinimal.h"
#include "AnimInstances/WarriorBaseAnimInstance.h"
#include "WarriorCharacterAnimInstance.generated.h"

class UCharacterMovementComponent;
class AWarriorBaseCharacter;
/**
 * 
 */
UCLASS()
class WARRIOR_API UWarriorCharacterAnimInstance : public UWarriorBaseAnimInstance
{
	GENERATED_BODY()

public:
	//原生初始化动画
	virtual void NativeInitializeAnimation() override;

	//原生线程安全更新动画
	virtual void NativeThreadSafeUpdateAnimation(float DeltaSeconds) override;

protected:
	//所属角色
	UPROPERTY()
	AWarriorBaseCharacter* OwningCharacter;
	//所属角色移动组件
	UPROPERTY()
	UCharacterMovementComponent* OwningMovementComponent;
	// 地面速度
	UPROPERTY(VisibleDefaultsOnly, BlueprintReadOnly, Category = "AnimData|LocomotionData")
	float GroundSpeed;
	//是否有加速度？
	UPROPERTY(VisibleDefaultsOnly, BlueprintReadOnly, Category = "AnimData|LocomotionData")
	bool bHasAcceleration;
	


	
};
